home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / pao / towns / cdplay / src / softime.asm < prev    next >
Assembly Source File  |  1991-10-18  |  2KB  |  84 lines

  1. ;==============================================================================
  2. ;    << 386ASM V2.0 >>  for  FM TOWNS
  3. ;==============================================================================
  4. .386p
  5.         PAGE        60,132
  6.         NAME        SOFTIME
  7.         TITLE        SOFT TIMER
  8. ;==============================================================================
  9. ;    10 us 単位でのソフト待ち
  10. ;
  11. ;    < High C からの呼出形式 >
  12. ;    ------------------------------------------------------
  13. ;    unsigned short wait ;        /*  待ち時間(10us単位)    */
  14. ;    void SOFT_timer( waitsw ) ;
  15. ;    ------------------------------------------------------
  16. ;
  17. ;    < note > : TABS = 4
  18. ;
  19. ;    < History >
  20. ;    1990.08.11 : CREATE
  21. ;    1991.04.23 : 清書
  22. ;
  23. ;    Programmed by Y.Hirata ( Nifty-ID : NAB03321 )
  24. ;==============================================================================
  25. ;
  26. INCLUDE    hc.inc                                ;
  27. ;
  28. CGROUP    GROUP pmcode, CODE                    ;
  29. DGROUP    GROUP pmdata, DATA                    ;
  30. ;
  31. ;--------------------------------------------
  32.         public    SOFT_timer                    ; 10us 単位の wait
  33. ;--------------------------------------------
  34. ;
  35. ;////////////////////////////////////////////
  36. ;            ネイティブ部
  37. ;////////////////////////////////////////////
  38. ;
  39. pmcode    SEGMENT                                ;
  40.         ASSUME    cs:CGROUP,ds:DGROUP            ;
  41. ;
  42. ;********************************************
  43. ;    10us単位でのWAIT
  44. ;
  45. ;    < High C からの呼出形式 >
  46. ;    unsigned short wait ;
  47. ;    void SOFT_timer( wait ) ;
  48. ;
  49. ;    <  INPUT  > : 待ち時間 -wait-
  50. ;                    10 us 単位
  51. ;
  52. ;    <  OUTPUT > : なし
  53. ;
  54. ;    <  RETURN > : なし
  55. ;
  56. ;    < History >
  57. ;    1990.08.11 : CREATE
  58. ;********************************************
  59.         ALIGN    4                            ; dword boundary
  60. SOFT_timer    PROC    NEAR                    ;
  61. ;
  62. #inparm1    EQU        SS:[ebp+8]                ; 待ち時間(第一引数)
  63. ;
  64.             push    ebp                        ;
  65.             mov        ebp,esp                    ; スタックフレーム形成
  66. ;
  67.             push    ecx                        ;
  68. ;
  69.             mov        cx,#inparm1                ;
  70.             int        INT_STIM                ; ソフトタイマBIOS
  71.             xor        eax,eax                    ; リターン値 0
  72. ;
  73.             pop        ecx                        ;
  74. ;
  75.             pop        ebp                        ; スタックフレーム開放
  76.             ret                                ;
  77. ;
  78. SOFT_timer    ENDP                            ;
  79. ;
  80. pmcode        ENDS                            ;
  81. ;
  82.         END
  83.  
  84.